home *** CD-ROM | disk | FTP | other *** search
/ Disc to the Future 2 / Disc to the Future Part II Programmer's Reference (Wayzata Technology)(6013)(1992).bin / MAC / THINKC / 4_0 / GNUUCP_2 / SOURCE / README < prev    next >
Text File  |  1989-07-31  |  5KB  |  134 lines

  1.     Sketchy documentation for beta test gnuucp
  2.  
  3.     John Gilmore
  4.     25 September 1987
  5.  
  6. This directory contains source for gnuucp, a free program that
  7. implements the Unix uucp file transfer protocol on Unix systems and
  8. on a variety of non-Unix systems.
  9.  
  10. Gnuucp is not derived from any AT&T or Unix code.  It is a further
  11. development of the "uuslave" program, which was certified by AT&T to be
  12. unlicensed.  (See the file ATT.CERTIFICATION in this directory.)
  13. Gnuucp can be freely given to anyone, whether they have a Unix license
  14. or not.  Gnuucp is copyright by the Free Software Foundation and can
  15. only be distributed under the rules of the "GNU Emacs General Public
  16. License".  Basically, you can give it to anyone, for free or for money,
  17. but you have to provide source code, and the recipients must be able to
  18. redistribute it.
  19.  
  20. Currently gnuucp consists of these source files:
  21.  
  22.     gnuucp.c    main routine, high level protocol
  23.     gio.c        "g" packet protocol implementation
  24.     uumisc.c    miscellaneous subroutines
  25.     locking.c    subroutines for multitask interlocking
  26.     sysdep.c    this is a link to, or copy of, a file from below.
  27.  
  28. The system dependent part of gnuucp comes in a different file for each
  29. supported system type.  You link or copy the right sysdep.foo file
  30. to "sysdep.c" before compiling.  Pick one of these, or make your own:
  31.  
  32.     sysdep.unix    BSD and Sys V Unix
  33.     sysdep.msdos    MSDOS
  34.     sysdep.st    Atari ST
  35.     sysdep.cpm    CP/M-80
  36.     sysdep.amiga    Commodore Amiga
  37.     sysdep.vms    DEC VMS
  38.  
  39. Some of these ports have not been tested in a while, and will need work.
  40.  
  41. There are also some header files:
  42.  
  43.     uucp.h        General uucp information and configuration
  44.     sysdep.h    Definitions of the routines in sysdep.c
  45.     includes.h    System include files, #ifdef'd for each system
  46.  
  47. There are two more files for MSDOS systems, comport.h and comport.asm, which
  48. contain an interrupt-driven routine for handling the serial port.
  49.  
  50.  
  51. Compiling gnuucp on a supported system
  52.  
  53. Pick which system you are on, and copy or link sysdep.whatever to
  54. sysdep.c.
  55.  
  56. Edit the Makefile to change the DEFS variable for the options you
  57. want.  First, the system you're compiling for:
  58.  
  59.     -DBSD    Berkeley Unix
  60.     -DSYSV    Unix System V
  61.     -DCPM    CP/M-80
  62.     -DMSDOS    Mess-Dos
  63.     -DST    Atari ST
  64.     -DVMS
  65.     -DAMIGA
  66.  
  67. It also has some other options:
  68.  
  69.     -DSUBDIR (Unix only) Keep queue files in subdirectories like 4.2BSD
  70.  
  71. For msdos, you have to assemble comport.asm and link with it too.
  72. An MSDOS makefile will eventually be included.
  73. VMS users see README.VMS and VMS.COM.
  74.  
  75.  
  76. Running gnuucp
  77.  
  78. Gnuucp can be run in several modes.  One way is designed for small micros
  79. and such; gnuucp will sit and wait for someone to call on the modem,
  80. and will then prompt them with "login: " and "Password:" and check the
  81. answers.  When another machine calls in and supplies the right login
  82. and password, it will run the uucp protocol to talk to that machine.
  83. Then it hangs up the phone and goes back to listening for another call.
  84. You get this mode by giving gnuucp an argument, which is the device
  85. name of the serial port that it should listen on.
  86.  
  87. The other mode is for larger machines where there already exist
  88. programs to listen for callers on the phones.  When such a program
  89. decides that the caller is a uucp machine, it can run gnuucp with no
  90. arguments, the same way Unix runs uucico.  Gnuucp will immediately
  91. begin the uucp protocol negotiations on its standard input.  When it is
  92. done transferring files, it will hang up the phone and exit.  In this
  93. role, it acts much like the Unix "uucico" program which implements
  94. uucp, and which is called when another machine logs in to your machine
  95. with a login like "uucp" or "Uhoptoad".
  96.  
  97. Gnuucp can also be run in "master" mode, where it will call out on an
  98. autodial modem.  If you run "gnuucp -S", it will call any system that
  99. there is work queued up for.  If you run "gnuucp -Ssystem" it will
  100. only call one system.  Currently there are no utilities for queueing
  101. up transfers for other systems (on Unix, the "uucp" and "uux" programs
  102. do this).  Anybody want to write free portable versions of them?
  103.  
  104. Except when listening for logins, gnuucp will change directories to
  105. a standard place (/usr/spool/uucp on Unix systems) and will leave its
  106. debugging logs in "gnuucp.log" in that directory.
  107.  
  108. A control file, (/usr/lib/uucp/gnuucp.ctl on Unix systems) is a text
  109. file containing parameters like your system name, the name of the
  110. gnuucp spool directory, the default debugging level, a list of
  111. which serial ports exist, what baud rates work on them, and what kind
  112. of dialers they have, etc.  You will need to edit it.
  113.  
  114. Gnuucp takes an -xN option, where N is a number, to control the amount
  115. of debugging output produced.  Specifying -x5, for example, gives you
  116. all the output for levels 0 through 5.
  117.  
  118.     -1    no output (default)
  119.     0    error messages and a copy of the LOGFILE output
  120.     1    login trace -- errors only
  121.     2    login trace -- full trace
  122.     3    file transfer commands -- errors only
  123.     4    file transfer commands -- full trace
  124.     5    packets -- errors only
  125.     6    packets -- full trace
  126.     7    file name munging trace
  127.     8    file directory scanning trace
  128.     9    every byte that goes over the serial port
  129.  
  130. For hints on debugging and porting gnuucp, see the file PORTING.
  131.  
  132. Copyright 1987 John Gilmore; you can redistribute only if your recipients can.
  133. {sun,ptsfa,lll-crg,ihnp4,ucbvax}!hoptoad!gnu                  gnu@toad.com
  134.